/*document.querySelector('body').addEventListener('touchmove', function (ev) {
    ev.preventDefault();
});*/
/*需求分析:
1、职能搜索
2、公司名称搜索
3、关键字搜索
4、搜索后的分页及跳转
5、职能下拉列表的去重
6、公司地址下拉列表的去重
*
* */

var params = {
    ctmid: "4413048",  /*会员号*/                 //恒大地产集团  1189
    pagenum: 1,        /*第几页*/
    keyword: "",       /*关键字*/
    jobname:"",        //职位名称
    sort: "",  /*sort --->需要排序的字段名称*/
    sequence: 0   ,     /*排序----1：正序;0：倒序;*/
    pagesize: 7, //每页数量 最大7
    coname:"",     //部门名称
    jobareaname:"",  //地点
    issuedate:"",   //职位发布时间
    funtype:"",    //职能名称
    jobid:"",        //部门号
    totalnum:"",      //总多少职位
    totalPage:"",      //总共 多少页
    divname:"",    //部门名称
    divid:""    //部门号
    


};

function getJobList(callback) {         //....................获取职位列表
    coapi.getJobList(params, function (data) {         //param() 方法创建数组或对象的序列化表示。
        //取到数据之后的操作
        return callback ? callback(data) : '';
    });
}


//获取职位列表-----------------------------------------------------------------------------------------------------------
var job_info = "";   //暂存职位信息
var text = '';   //暂存职位列表
function getJobInfo(i,str,data) {
    var jobid = str[i].jobid;   //职位号
    console.log('职位列表', data);    /*打印职位*/
   /* params.pagesize = 3;      //强制将每一页的职位数设为3*/
    var list = data.resultbody.joblist;    // list--->joblist列表
    //alert(jobid)   ok
    //职位详情
    coapi.getJobDetail(jobid, function (data1) {        //调用接口获取职位详情
        job_info = data1.resultbody;
        // alert(job_info.jobinfo)    ok
        //判断部门名称是否为空
        list[i].divname ===""? list[i].divname = "后台该部门名称暂缺" : list[i].divname  ;
        //判断职位名称是否为空
        list[i].jobname ===""? list[i].jobname = "后台该职位名称暂缺" : list[i].jobname;
        //判断招聘人数是否为空
        list[i].jobnum === ""? list[i].jobnum = "若干": list[i].jobnum ;
        text +="<div class=\"job_sort\">\n" +
            "        <ul>\n" +
            "            <li>"+list[i].divname+"</li>\n" +   /*部门名称*/
            "            <li>"+list[i].jobname+"</li>\n" +   /*职位名称*/
            "            <li>"+list[i].jobnum+"人</li>\n" +   /*人数*/
            "            <li class='singal'>▲</li>\n" +
            "         </ul>\n" +
            "</div>"+
            "<div class=\"job_detail\">\n" +
            "      <p>"+job_info.jobinfo+"</p>\n" +
            "      <p><a href=\"https://jobs.51job.com/all/"+job_info.jobid+".html\" target=\"_blank\"><button type=\"button\" class=\"btn btn-default\">点击申请</button></a></p>\n" +
            "</div>";
        text===''? text='<ul><li style="width:70%;position: relative;color: red;text-align: center">没有搜索到与【'+params.keyword+'】相关的职位信息！</li></ul>' : text = text ;
        $('.job_info_content').html(text);    //将职位详情列表插入job_info中

        //职位名称的点击事件----------------------------------------------------------------------------------------------
        $(".job_sort").click(function () {
            $(".job_detail").not($(this).next()).slideUp();  //非当前点击的都收起
            $(".job_sort").not(this).find(".singal").text("▲");   //非当前点击的变收起标志
            $(this).next().slideToggle();
            var singal_this = $(this).find(".singal");
            singal_this.text()==="▲" ? singal_this.text("▼") : singal_this.text("▲");
        })
    });
}
//遍历打印出职位及详情
function getjob(data) {
    text = "" ;    //初始化
    var list = data.resultbody.joblist;    // list--->joblist列表
    //遍历打印出职位及详情
    for (var j=0;j<list.length;j++){
        getJobInfo(j,list,data);
    }

    //分页----------------------------------------------------------------------------------------------------------------
    $("#countNum").html(data.resultbody.totalnum);      //总共多少符合的职位
    params.totalnum = data.resultbody.totalnum;
    params.totalPage = Math.ceil(  params.totalnum/params.pagesize);     //总页数
    if (params.totalPage>=500){
        params.totalPage = 500;    //分页最多500ye
    }
    $("#total").html(params.totalPage);      //共多少页数
    $("#present").html(params.pagenum);    //当前为第几页
    //alert('总'+params.totalPage+'页');
}



//搜索关键字-------------------------------------------------------------------------------------------------------------
//关键字搜索时
$('.search_btn').click(function () {   //为精确搜索
    resetKeywordsSearch();
    if ($("#key_word").val()===''){
        alert("关键词搜索的内容不能为空！请输入关键字...");
    }else {
        params.keyword = $("#key_word").val();     /*关键字赋值*/
        getJobList(getjob);      /*通过关键字搜索*/
    }
});



//职位列表的初始状态------------------------------------------------------------------------------------------------------
function ex(){    //显示该会员号下所有的职能信息
    params.pagenum = 1;    //默认显示第一页
    params. pagesize =  7, //每页职位数量最大7
    getJobList(getjob);
}




//通过部门名称搜索筛选----------------------------------------------------------------------------------------------------
function getdivName(data) {
    console.log('部门名称', data);
    var comName1 = data.resultbody.joblist;    //list--->公司名称
    //alert(comName1.length);
    //部门名称去重
    var temp = [];   //临时数组,存放没有重复的公司名称
    function uniq(comName1){
        for (var i=0;i<comName1.length;i++){
            if (temp.indexOf(comName1[i].divname)===-1){
                temp.push(comName1[i].divname)
            }
        }
        return temp;
    }
    uniq(comName1);

    //对应的divid去重
    var temp1 = [];   //临时数组,存放没有重复的公司名称
    function uniq1(comName1){
        for (var i=0;i<comName1.length;i++){
            if (temp1.indexOf(comName1[i].divid)===-1){
                temp1.push(comName1[i].divid)
            }
        }
        return temp1;
    }
    uniq1(comName1);
    //alert(temp.length===temp1.length)

    var comNameInfo = '';
    comNameInfo += '<option>选择部门&or;</option>';
    for (var id=0;id<temp.length;id++) {
        comNameInfo += '<option value="' + temp1[id] + '">' + temp[id] + '</option>';   //value 为该公司 对应的部门号,
    }
   // console.log('当前的公司名称----->'+comNameInfo);
    $('.jobdiv_search').html(comNameInfo);   //公司名称全部装入select
}


//部门名称查询筛选--------------------------------------------------------------------------------------------------------
function jobdivNameSearch() {
    resetdivSearch();   //复原公司名称搜索
    params.divid = $('.jobdiv_search option:selected').val();    //部门号
    //该公司下的职能搜索的下拉列表
    job_name_select();
    params.pagesize = 7;   //显示前7个职位
    getJobList(getjob);
}

/*部门名称列表的初始状态*/
function com_select() {   //显示该会员编号下的所有公司名称
    params.pagenum = 1;    //默认显示第一页
    params.pagesize = 1000;   //显示所有的   最多1000
    getJobList(getdivName);
}


//职能(职位名称)的下拉列表的搜索-------------------------------------------------------------------------------------------
function getjobname(data) {
    console.log('职能名称的下拉列表', data);
    var list1 = data.resultbody.joblist;    //list--->职能名称
    //alert(list1.length)
    //职能去重
    var temp2 = [];   //临时数组,存放没有重复的职能名称
    function uniq2(list1){
        for (var i=0;i<list1.length;i++){
            if (temp2.indexOf(list1[i].jobname)===-1){
                temp2.push(list1[i].jobname)
            }
        }
        return temp2;
    }
    uniq2(list1);
    //alert(temp2);
    var text1 = '';
    text1 += '<option>选择岗位名称&or;</option>';
    for (var id=0;id<temp2.length;id++) {
        text1 += '<option value="' + temp2[id] + '">' + temp2[id] + '</option>';     //value为职位类别
    }
    $('.jobname_search').html(text1);   //地点全部装入select
}
//职能名称的搜索
function jobnameSearch() {
    resetjobnameSearch();    //职能名称搜索框初始化
    params.keyword = $('.jobname_search option:selected').val();
    //alert(params.jobid);
    //该职能对应的公司搜索的下拉列表 ×   只有公司下面有很多职能，不能反过来
    //com_select();
    params.pagesize = 7;
    getJobList(getjob);      /*通过职能 名称搜索*/
}

//职位名称下拉列表的初始状态
function job_name_select() {
    params.pagenum = 1;    //默认显示第一页
    params.pagesize = 1000;   //显示所有的
    getJobList(getjobname);      /*通过会员号获取所有的搜索*/
}



//复原下拉列表搜索    不清空   缩小范围
function resetjobnameSearch() {
    //params.keyword = '';
    //params.coid = '';
}
function resetdivSearch() {
    params.keyword = '';
    //params.coid = '';
    //params.jobid = '';

}
function resetKeywordsSearch(){
    params.keyword = '';   //复原关键字
    params.divid = '';    //复原部门号
}





$("#firstPage").click(function () {     //首页的点击事件
    params.pagenum = 1;
    getJobList(getjob);
});
$("#pre").click(function () {     //上一页的点击事件
    if (params.pagenum<=1){
        params.pagenum = 1;
    } else {
        params.pagenum -=1;
    }
    getJobList(getjob);
});
$("#next").click(function () {        //下一页的点击事件
    if (params.pagenum<params.totalPage){
        params.pagenum += 1;
    } else {
        params.pagenum = params.totalPage;
    }
    getJobList(getjob);
});
$("#end").click(function () {     //尾页

    params.pagenum = params.totalPage;      //第几页 ====》 总页数
    getJobList(getjob);
});

$("#go").click(function () {       //跳转到第几页
    var inputVal =  parseInt($("#inputPage").val());
    if (inputVal>params.totalPage){
         params.pagenum = params.totalPage;   //不同数据类型之间的比较与赋值
        $("#inputPage").val(params.totalPage);
    }else {
        params.pagenum  =  parseInt($("#inputPage").val());
    }
    //$("#inputPage").val() === 1;   //跳转框初始化
    getJobList(getjob);
});



/*职位列表点击事件*/
//-------------------------------------------------------------------------------------------->职位申请

//用于显示职位详情
var params2 = {
    ctmid:"1189",
    jobid: ""           //职位号
};

//1.6获取搜索器列表    根据ctmid获取对应拥有的coid，divid，jobarea，functype。
function getJobCondition(callback) {      //..............获取搜索列表
    coapi.getJobCondition(params.ctmid,         //param() 方法创建数组或对象的序列化表示。
        function (data) {
            //取到数据之后的操作
            return callback ? callback(data) : '';   //三元表达式   callback===true --->执行 callback(data)   否则什么不做
        }, params2);
}



function job_detail() {      //职位详情
    var job_info = '';
    job_info = ''
}






